The present application relates generally to cyber asset management of industrial control system software, and more particularly, to a method and system for use in facilitating patch and update management of industrial control systems.
Many known industrial control systems are installed within industrial facilities that include critical infrastructure. Such known industrial control systems typically include supervisory control and data acquisition (SCADA) systems and process control systems that control, monitor, and manage the execution of the functions associated with the infrastructure based on established parameters and the real-time information they receive. At least some of such industrial facilities include electric power generation and transmission facilities, transportation systems, dam and water systems, communication systems, chemical and petroleum systems, and other critical facilities that are not intended to tolerate sudden interruptions in service.
At least some of such known industrial control systems are deployed within large networks extending through large geographic areas, including worldwide deployments. Therefore, many known industrial control systems are deployed using mature and universal communication protocols such as the Transmission Control Protocol/Internet Protocol (TCP/IP) to easily and economically create large integrated systems of previously isolated industrial control systems. However, with the increased size, complexity, and interconnectivity, some industrial control systems have increased security vulnerabilities. For example, with increased network communications, a single industrial control system component compromise could lead to a much larger cascading failure in adjacent networked systems by allowing unintended, exploitable access. Tracing and isolating the root cause of a system failure in networked systems becomes much more difficult and with potentially far-reaching consequences.
Moreover, many known industrial control systems require routine or periodic updates, sometimes referred to as patches, to resolve security vulnerabilities and functional issues. Therefore, many asset owners of such industrial control systems have instituted a patch management system for patch deployment that lies somewhere in the spectrum between fully manual to fully automated, and most include some combination therebetween. For example, at least some patch management systems require at least one of manual inventories of previously implemented patches, manual evaluations of currently available patches, and manual trial-and-error patch implementations on test platforms, and such manual efforts are time and resource intensive. Also, some patches may require the associated industrial control system be taken off line, thereby requiring at least a portion of the system be removed from service for an undetermined period of time with the associated disruption of the facility. In addition, some patches may require a full system restart once deployed. Therefore, deployment of some patches may be delayed due to such uncertainties with respect to system and facility impact, thereby rendering unscheduled patching with questionable impact improbable for risk-adverse facilities. Moreover, some known large industrial customers may require patching activities at many geographically dispersed sites, with a large number of units at each site, making a quick response difficult. Furthermore, many patch management systems for industrial control systems primarily, or exclusively, address process functionality issues within the original code rather than enhance security.